#define _CRT_SECURE_NO_WARNINGS
#include"Priority_queue.h"
#include"stack.h"
#include"queue.h"
int main()
{
	bit::Priority_queue<int> pq;
	for (int i = 5; i > 0; i--)
	{
		pq.push(i);
	}
	int n = pq.size();
	for (int i = 0; i < n; i++)
	{
		cout << pq.top() << " ";
		pq.pop();
	}
	cout << endl;
	bit::Priority_queue<int, vector<int>, bit::Less<int>> pq1;
	for (int i = 10; i > 0; i--)
	{
		pq1.push(i);
	}
	while (!pq.empty())
	{
		cout << pq.top() << " ";
		pq.pop();
	}
	cout << endl;
	bit::stack<int> st;
	st.push(1);
	st.push(2);
	st.push(3);
	st.push(4);
	int num = st.size();
	for (int i = 0; i < num; i++)
	{
		cout << st.top() << " ";
		st.pop();
	}
	cout << endl;
	bit::queue<int> qp;
	qp.push_back(5);
	qp.push_back(6);
	qp.push_back(7);
	qp.push_back(8);
	num = qp.size();
	for (int i = 0; i < num; i++)
	{
		cout << qp.front() << " ";
		qp.pop_back();
	}
	return 0;
}